#pragma once
#include <utility>
#include "VGQAsympExp.h"

class VGQuantileBounds
{
public:
	VGQuantileBounds(double mu, double lambda, double alpha, double beta);
	~VGQuantileBounds(void);

	std::pair<double, double> operator()(double u) const;

private:
	double _lowerCutoff, _upperCutOff;
	double _mu, _lambda, _alpha, _beta;

	double UpperBound(double u) const;
	double LowerBound(double u) const;
	VGQAsympExp _asympExpansion;
};

